package com.ovopark.organize.server.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ovopark.organize.server.model.entity.FranchiseesRegistrationFollow;
import com.ovopark.organize.server.model.vo.SimpleDateVo;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * @Description:
 * @Author:
 * @Date:
 */
public interface FranchiseesRegistrationFollowMapper extends BaseMapper<FranchiseesRegistrationFollow> {

    List<SimpleDateVo> getNextFranchiseesRegistrationTime(@Param("registrationIds")String registrationIds, @Param("groupId")Integer groupId);

    IPage<FranchiseesRegistrationFollow> getRegistrationFollowByRegistrationId(@Param("page")Page<FranchiseesRegistrationFollow> page,
                                                                               @Param("registrationId") Integer registrationId,
                                                                               @Param("followUpPlan") Integer followUpPlan,
                                                                               @Param("followUpPlanStatus") Integer followUpPlanStatus);

    List<FranchiseesRegistrationFollow> getRegistrationFollows(@Param("registrationId") Integer registrationId,
                                                               @Param("followUpPlan") Integer followUpPlan,
                                                               @Param("followUpPlanStatus") Integer followUpPlanStatus);

    void updateFollowUpPlanStatusByRegistrationId(@Param("groupId") Integer groupId, @Param("registrationIds") String registrationIds,
                                                  @Param("userId") Integer userId, @Param("followUpPlanStatus") Integer followUpPlanStatus,
                                                  @Param("followUpPlanReason")String followUpPlanReason);



}
